Integrated Model-Driven Development Environments for Equation-Based Object-Oriented Languages

نویسنده

  • Adrian Pop
چکیده

Integrated development environments are essential for efficient realization of complex industrial products, typically consisting of both software and hardware components. Powerful equationbased object-oriented (EOO) languages such as Modelica are successfully used for modeling and virtual prototyping increasingly complex physical systems and components, whereas software modeling approaches like UML, especially in the form of domain specific language subsets, are increasingly used for software systems modeling. A research hypothesis investigated to some extent in this thesis is if EOO languages can be successfully generalized also to support software modeling, thus addressing whole product modeling, and if integrated environments for such a generalized EOO language tool support can be created and effectively used on real-sized applications. However, creating advanced development environments is still a resource-consuming errorprone process that is largely manual. One rather successful approach is to have a general framework kernel, and use meta-modeling and meta-programming techniques to provide tool support for specific languages. Thus, the main goal of this research is the development of a metamodeling approach and its associated meta-programming methods for the synthesis of modeldriven product development environments that includes support for modeling and simulation. Such environments include components like model editors, compilers, debuggers and simulators. This thesis presents several contributions towards this vision in the context of EOO languages, primarily the Modelica language. Existing state-of-the art tools supporting EOO languages typically do not satisfy all user requirements with regards to analysis, management, querying, transformation, and configuration of models. Moreover, tools such as model-compilers tend to become large and monolithic. If instead it would be possible to model desired tool extensions with meta-modeling and metaprogramming, within the application models themselves, the kernel tool could be made smaller, and better extensibility, modularity and flexibility could be achieved. We argue that such user requirements could be satisfied if the equation-based object-oriented languages are extended with meta-modeling and meta-programming. This thesis presents a new language that unifies EOO languages with term pattern matching and transformation typically found in functional and logic programming languages. The development, implementation, and performance of the unified language are also presented. The increased ease of use, the high abstraction, and the expressivity of the unified language are very attractive properties. However, these properties come with the drawback that programming and modeling errors are often hard to find. To overcome these issues, several methods and integrated frameworks for run-time debugging of the unified language have been designed, analyzed, implemented, and evaluated on non-trivial industrial applications. To fully support development using the unified language, an integrated model-driven development environment based on the Eclipse platform is proposed, designed, implemented, and used extensively. The development environment integrates advanced textual modeling, code browsing, debugging, etc. Graphical modeling is also supported by the development environment based on a proposed ModelicaML Modelica/UML/SysML profile. Finally, serialization, composition, and transformation operations on models are investigated. This work has been supported by the National Computer Science Graduate School (CUGS), the ProViking Graduate School, the Swedish Foundation for Strategic Research (SSF) financed research on Integrational Software Engineering (RISE), VISIMOD and Engineering and Computational Design (SECD) projects; the Vinnova financed Semantic Web for Products (SWEBPROD) and Safe and Secure Modeling and Simulation projects. Also, we acknowledge the cooperation with Reasoning on the Web with Rules and Semantics (REWERSE) "Network of Excellence" (NoE) funded by the EU Commission and Switzerland within the "6th Framework Programme" (FP6), Information Society Technologies (IST). We also acknowledge support from the Swedish Science Council (VR) in the project on HighLevel Debugging of Equation-Based System Modeling & Simulation Languages and from MathCore Engineering AB.

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Towards Run-time Debugging of Equation-based Object-oriented Languages

The development of today’s complex products requires advanced integrated environments and modeling languages for modeling and simulation. Equation-based object-oriented declarative (EOO) languages are emerging as the key approach to physical system modeling and simulation. The increased ease of use, the high abstraction and the expressivity of EOO languages are very attractive properties. Howev...

متن کامل

Prototyping Programming Environments for Object-Oriented Concurrent Languages: a Smalltalk-Based Experience Lo c LESCAUDRON

This paper discusses the prototyping of programming environments for object-oriented concurrent programming languages. We advocate designing new prototypes starting from existing sophisticated programming environments that we can nd in standard (sequential) object-oriented programming languages (namely Smalltalk-80 1 ). Our starting point is a testbed for object-oriented concurrent languages ba...

متن کامل

Availability evaluation of Software architecture of object oriented Style using coloured Petri nets

Software architecture is one of the most fundamental products in the process of software development in the areas of behavioral or non- behavioral features like availability or transformability change. There are different ways to evaluate software architecture one of which is the creation of application model. An executable model of software architecture is an official description of architectu...

متن کامل

The design of an object-oriented environment and language for teaching

While object-orientation has been widely accepted as an important programming paradigm, teaching object-orientation remains difficult. Experience reports suggest that some problems can be avoided by teaching object-orientation as the first language in an introductory course. However, other problems remain, in particular languages and environments are regularly criticised as unsuitable and overl...

متن کامل

- 1 - Blue – a Language for Teaching Object - Oriented Programming

Teaching object-oriented programming has clearly become an important part of computer science education. We agree with many others that the best place to teach it is in the CS1 introductory course. Many problems with this have been reported in the literature. These mainly result from inadequate languages and environments. Blue is a new language and integrated programming environment, currently ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

برای دانلود متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

عنوان ژورنال:

دوره   شماره 

صفحات  -

تاریخ انتشار 2008